TSTP Solution File: PUZ081^1 by Duper---1.0
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : Duper---1.0
% Problem : PUZ081^1 : TPTP v8.1.2. Released v3.6.0.
% Transfm : none
% Format : tptp:raw
% Command : duper %s
% Computer : n019.cluster.edu
% Model : x86_64 x86_64
% CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory : 8042.1875MB
% OS : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit : 300s
% DateTime : Thu Aug 31 13:14:40 EDT 2023
% Result : Theorem 3.97s 4.13s
% Output : Proof 3.97s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.13 % Problem : PUZ081^1 : TPTP v8.1.2. Released v3.6.0.
% 0.00/0.14 % Command : duper %s
% 0.15/0.36 % Computer : n019.cluster.edu
% 0.15/0.36 % Model : x86_64 x86_64
% 0.15/0.36 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.15/0.36 % Memory : 8042.1875MB
% 0.15/0.36 % OS : Linux 3.10.0-693.el7.x86_64
% 0.15/0.36 % CPULimit : 300
% 0.15/0.36 % WCLimit : 300
% 0.15/0.36 % DateTime : Sat Aug 26 22:52:58 EDT 2023
% 0.15/0.36 % CPUTime :
% 3.97/4.13 SZS status Theorem for theBenchmark.p
% 3.97/4.13 SZS output start Proof for theBenchmark.p
% 3.97/4.13 Clause #0 (by assumption #[]): Eq (∀ (X : Iota), is_a X islander → Or (is_a X knight) (is_a X knave)) True
% 3.97/4.13 Clause #1 (by assumption #[]): Eq (∀ (X : Iota), is_a X knight → ∀ (A : Prop), says X A → A) True
% 3.97/4.13 Clause #2 (by assumption #[]): Eq (∀ (X : Iota), is_a X knave → ∀ (A : Prop), says X A → Not A) True
% 3.97/4.13 Clause #3 (by assumption #[]): Eq (And (is_a zoey islander) (is_a mel islander)) True
% 3.97/4.13 Clause #4 (by assumption #[]): Eq (says zoey (is_a mel knave)) True
% 3.97/4.13 Clause #5 (by assumption #[]): Eq (says mel (Not (Or (is_a zoey knave) (is_a mel knave)))) True
% 3.97/4.13 Clause #6 (by assumption #[]): Eq
% 3.97/4.13 (Not
% 3.97/4.13 (Exists fun Y =>
% 3.97/4.13 Exists fun Z =>
% 3.97/4.13 And (And (And (Not (Iff (Eq Y knight) (Eq Y knave))) (Not (Iff (Eq Z knight) (Eq Z knave)))) (is_a mel Y))
% 3.97/4.13 (is_a zoey Z)))
% 3.97/4.13 True
% 3.97/4.13 Clause #7 (by identity loobHoist #[4]): Or (Eq (says zoey True) True) (Eq (is_a mel knave) False)
% 3.97/4.13 Clause #8 (by identity boolHoist #[4]): Or (Eq (says zoey False) True) (Eq (is_a mel knave) True)
% 3.97/4.13 Clause #9 (by clausification #[1]): ∀ (a : Iota), Eq (is_a a knight → ∀ (A : Prop), says a A → A) True
% 3.97/4.13 Clause #10 (by clausification #[9]): ∀ (a : Iota), Or (Eq (is_a a knight) False) (Eq (∀ (A : Prop), says a A → A) True)
% 3.97/4.13 Clause #11 (by clausification #[10]): ∀ (a : Iota) (a_1 : Prop), Or (Eq (is_a a knight) False) (Eq (says a a_1 → a_1) True)
% 3.97/4.13 Clause #12 (by clausification #[11]): ∀ (a : Iota) (a_1 : Prop), Or (Eq (is_a a knight) False) (Or (Eq (says a a_1) False) (Eq a_1 True))
% 3.97/4.13 Clause #14 (by identity boolHoist #[12]): ∀ (a : Iota) (a_1 : Prop), Or (Eq (is_a a knight) False) (Or (Eq a_1 True) (Or (Eq (says a False) False) (Eq a_1 True)))
% 3.97/4.13 Clause #15 (by clausification #[2]): ∀ (a : Iota), Eq (is_a a knave → ∀ (A : Prop), says a A → Not A) True
% 3.97/4.13 Clause #16 (by clausification #[15]): ∀ (a : Iota), Or (Eq (is_a a knave) False) (Eq (∀ (A : Prop), says a A → Not A) True)
% 3.97/4.13 Clause #17 (by clausification #[16]): ∀ (a : Iota) (a_1 : Prop), Or (Eq (is_a a knave) False) (Eq (says a a_1 → Not a_1) True)
% 3.97/4.13 Clause #18 (by clausification #[17]): ∀ (a : Iota) (a_1 : Prop), Or (Eq (is_a a knave) False) (Or (Eq (says a a_1) False) (Eq (Not a_1) True))
% 3.97/4.13 Clause #19 (by clausification #[18]): ∀ (a : Iota) (a_1 : Prop), Or (Eq (is_a a knave) False) (Or (Eq (says a a_1) False) (Eq a_1 False))
% 3.97/4.13 Clause #20 (by identity loobHoist #[19]): ∀ (a : Iota) (a_1 : Prop), Or (Eq (is_a a knave) False) (Or (Eq a_1 False) (Or (Eq (says a True) False) (Eq a_1 False)))
% 3.97/4.13 Clause #22 (by eliminate duplicate literals #[20]): ∀ (a : Iota) (a_1 : Prop), Or (Eq (is_a a knave) False) (Or (Eq a_1 False) (Eq (says a True) False))
% 3.97/4.13 Clause #23 (by clausification #[3]): Eq (is_a mel islander) True
% 3.97/4.13 Clause #24 (by clausification #[3]): Eq (is_a zoey islander) True
% 3.97/4.13 Clause #25 (by clausification #[0]): ∀ (a : Iota), Eq (is_a a islander → Or (is_a a knight) (is_a a knave)) True
% 3.97/4.13 Clause #26 (by clausification #[25]): ∀ (a : Iota), Or (Eq (is_a a islander) False) (Eq (Or (is_a a knight) (is_a a knave)) True)
% 3.97/4.13 Clause #27 (by clausification #[26]): ∀ (a : Iota), Or (Eq (is_a a islander) False) (Or (Eq (is_a a knight) True) (Eq (is_a a knave) True))
% 3.97/4.13 Clause #28 (by superposition #[27, 23]): Or (Eq (is_a mel knight) True) (Or (Eq (is_a mel knave) True) (Eq False True))
% 3.97/4.13 Clause #29 (by superposition #[27, 24]): Or (Eq (is_a zoey knight) True) (Or (Eq (is_a zoey knave) True) (Eq False True))
% 3.97/4.13 Clause #30 (by clausification #[29]): Or (Eq (is_a zoey knight) True) (Eq (is_a zoey knave) True)
% 3.97/4.13 Clause #31 (by clausification #[28]): Or (Eq (is_a mel knight) True) (Eq (is_a mel knave) True)
% 3.97/4.13 Clause #33 (by identity boolHoist #[5]): Or (Eq (says mel False) True) (Eq (Not (Or (is_a zoey knave) (is_a mel knave))) True)
% 3.97/4.13 Clause #36 (by clausification #[6]): Eq
% 3.97/4.13 (Exists fun Y =>
% 3.97/4.13 Exists fun Z =>
% 3.97/4.13 And (And (And (Not (Iff (Eq Y knight) (Eq Y knave))) (Not (Iff (Eq Z knight) (Eq Z knave)))) (is_a mel Y))
% 3.97/4.13 (is_a zoey Z))
% 3.97/4.13 False
% 3.97/4.13 Clause #37 (by clausification #[36]): ∀ (a : Iota),
% 3.97/4.16 Eq
% 3.97/4.16 (Exists fun Z =>
% 3.97/4.16 And (And (And (Not (Iff (Eq a knight) (Eq a knave))) (Not (Iff (Eq Z knight) (Eq Z knave)))) (is_a mel a))
% 3.97/4.16 (is_a zoey Z))
% 3.97/4.16 False
% 3.97/4.16 Clause #38 (by clausification #[37]): ∀ (a a_1 : Iota),
% 3.97/4.16 Eq
% 3.97/4.16 (And (And (And (Not (Iff (Eq a knight) (Eq a knave))) (Not (Iff (Eq a_1 knight) (Eq a_1 knave)))) (is_a mel a))
% 3.97/4.16 (is_a zoey a_1))
% 3.97/4.16 False
% 3.97/4.16 Clause #39 (by clausification #[38]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or
% 3.97/4.16 (Eq (And (And (Not (Iff (Eq a knight) (Eq a knave))) (Not (Iff (Eq a_1 knight) (Eq a_1 knave)))) (is_a mel a))
% 3.97/4.16 False)
% 3.97/4.16 (Eq (is_a zoey a_1) False)
% 3.97/4.16 Clause #40 (by clausification #[39]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False)
% 3.97/4.16 (Or (Eq (And (Not (Iff (Eq a_1 knight) (Eq a_1 knave))) (Not (Iff (Eq a knight) (Eq a knave)))) False)
% 3.97/4.16 (Eq (is_a mel a_1) False))
% 3.97/4.16 Clause #41 (by clausification #[40]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False)
% 3.97/4.16 (Or (Eq (is_a mel a_1) False)
% 3.97/4.16 (Or (Eq (Not (Iff (Eq a_1 knight) (Eq a_1 knave))) False) (Eq (Not (Iff (Eq a knight) (Eq a knave))) False)))
% 3.97/4.16 Clause #42 (by clausification #[41]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False)
% 3.97/4.16 (Or (Eq (is_a mel a_1) False)
% 3.97/4.16 (Or (Eq (Not (Iff (Eq a knight) (Eq a knave))) False) (Eq (Iff (Eq a_1 knight) (Eq a_1 knave)) True)))
% 3.97/4.16 Clause #43 (by clausification #[42]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False)
% 3.97/4.16 (Or (Eq (is_a mel a_1) False)
% 3.97/4.16 (Or (Eq (Iff (Eq a_1 knight) (Eq a_1 knave)) True) (Eq (Iff (Eq a knight) (Eq a knave)) True)))
% 3.97/4.16 Clause #44 (by clausification #[43]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False)
% 3.97/4.16 (Or (Eq (is_a mel a_1) False)
% 3.97/4.16 (Or (Eq (Iff (Eq a knight) (Eq a knave)) True) (Or (Eq (Eq a_1 knight) True) (Eq (Eq a_1 knave) False))))
% 3.97/4.16 Clause #46 (by clausification #[44]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False)
% 3.97/4.16 (Or (Eq (is_a mel a_1) False)
% 3.97/4.16 (Or (Eq (Eq a_1 knight) True)
% 3.97/4.16 (Or (Eq (Eq a_1 knave) False) (Or (Eq (Eq a knight) True) (Eq (Eq a knave) False)))))
% 3.97/4.16 Clause #47 (by clausification #[44]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False)
% 3.97/4.16 (Or (Eq (is_a mel a_1) False)
% 3.97/4.16 (Or (Eq (Eq a_1 knight) True)
% 3.97/4.16 (Or (Eq (Eq a_1 knave) False) (Or (Eq (Eq a knight) False) (Eq (Eq a knave) True)))))
% 3.97/4.16 Clause #48 (by clausification #[46]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False)
% 3.97/4.16 (Or (Eq (is_a mel a_1) False)
% 3.97/4.16 (Or (Eq (Eq a_1 knave) False) (Or (Eq (Eq a knight) True) (Or (Eq (Eq a knave) False) (Eq a_1 knight)))))
% 3.97/4.16 Clause #49 (by clausification #[48]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False)
% 3.97/4.16 (Or (Eq (is_a mel a_1) False)
% 3.97/4.16 (Or (Eq (Eq a knight) True) (Or (Eq (Eq a knave) False) (Or (Eq a_1 knight) (Ne a_1 knave)))))
% 3.97/4.16 Clause #50 (by clausification #[49]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False)
% 3.97/4.16 (Or (Eq (is_a mel a_1) False) (Or (Eq (Eq a knave) False) (Or (Eq a_1 knight) (Or (Ne a_1 knave) (Eq a knight)))))
% 3.97/4.16 Clause #51 (by clausification #[50]): ∀ (a a_1 : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False)
% 3.97/4.16 (Or (Eq (is_a mel a_1) False) (Or (Eq a_1 knight) (Or (Ne a_1 knave) (Or (Eq a knight) (Ne a knave)))))
% 3.97/4.16 Clause #52 (by destructive equality resolution #[51]): ∀ (a : Iota),
% 3.97/4.16 Or (Eq (is_a zoey a) False) (Or (Eq (is_a mel knave) False) (Or (Eq knave knight) (Or (Eq a knight) (Ne a knave))))
% 3.97/4.16 Clause #53 (by destructive equality resolution #[52]): Or (Eq (is_a zoey knave) False) (Or (Eq (is_a mel knave) False) (Or (Eq knave knight) (Eq knave knight)))
% 3.97/4.16 Clause #54 (by eliminate duplicate literals #[53]): Or (Eq (is_a zoey knave) False) (Or (Eq (is_a mel knave) False) (Eq knave knight))
% 3.97/4.16 Clause #55 (by eliminate duplicate literals #[14]): ∀ (a : Iota) (a_1 : Prop), Or (Eq (is_a a knight) False) (Or (Eq a_1 True) (Eq (says a False) False))
% 3.97/4.16 Clause #56 (by superposition #[55, 30]): ∀ (a : Prop), Or (Eq a True) (Or (Eq (says zoey False) False) (Or (Eq False True) (Eq (is_a zoey knave) True)))
% 3.97/4.16 Clause #57 (by superposition #[55, 31]): ∀ (a : Prop), Or (Eq a True) (Or (Eq (says mel False) False) (Or (Eq False True) (Eq (is_a mel knave) True)))
% 3.97/4.16 Clause #58 (by clausification #[57]): ∀ (a : Prop), Or (Eq a True) (Or (Eq (says mel False) False) (Eq (is_a mel knave) True))
% 3.97/4.18 Clause #59 (by clausification #[56]): ∀ (a : Prop), Or (Eq a True) (Or (Eq (says zoey False) False) (Eq (is_a zoey knave) True))
% 3.97/4.18 Clause #60 (by superposition #[59, 8]): ∀ (a : Prop), Or (Eq a True) (Or (Eq (is_a zoey knave) True) (Or (Eq False True) (Eq (is_a mel knave) True)))
% 3.97/4.18 Clause #61 (by clausification #[60]): ∀ (a : Prop), Or (Eq a True) (Or (Eq (is_a zoey knave) True) (Eq (is_a mel knave) True))
% 3.97/4.18 Clause #70 (by equality factoring #[61]): Or (Eq (is_a mel knave) True) (Or (Ne True True) (Eq (is_a zoey knave) True))
% 3.97/4.18 Clause #72 (by clausification #[70]): Or (Eq (is_a mel knave) True) (Or (Eq (is_a zoey knave) True) (Or (Eq True False) (Eq True False)))
% 3.97/4.18 Clause #74 (by clausification #[72]): Or (Eq (is_a mel knave) True) (Or (Eq (is_a zoey knave) True) (Eq True False))
% 3.97/4.18 Clause #75 (by clausification #[74]): Or (Eq (is_a mel knave) True) (Eq (is_a zoey knave) True)
% 3.97/4.18 Clause #78 (by clausification #[33]): Or (Eq (says mel False) True) (Eq (Or (is_a zoey knave) (is_a mel knave)) False)
% 3.97/4.18 Clause #80 (by clausification #[78]): Or (Eq (says mel False) True) (Eq (is_a zoey knave) False)
% 3.97/4.18 Clause #81 (by superposition #[80, 75]): Or (Eq (says mel False) True) (Or (Eq (is_a mel knave) True) (Eq False True))
% 3.97/4.18 Clause #82 (by clausification #[81]): Or (Eq (says mel False) True) (Eq (is_a mel knave) True)
% 3.97/4.18 Clause #83 (by superposition #[82, 58]): ∀ (a : Prop), Or (Eq (is_a mel knave) True) (Or (Eq a True) (Or (Eq True False) (Eq (is_a mel knave) True)))
% 3.97/4.18 Clause #86 (by clausification #[83]): ∀ (a : Prop), Or (Eq (is_a mel knave) True) (Or (Eq a True) (Eq (is_a mel knave) True))
% 3.97/4.18 Clause #87 (by eliminate duplicate literals #[86]): ∀ (a : Prop), Or (Eq (is_a mel knave) True) (Eq a True)
% 3.97/4.18 Clause #96 (by equality factoring #[87]): Or (Ne True True) (Eq (is_a mel knave) True)
% 3.97/4.18 Clause #98 (by clausification #[96]): Or (Eq (is_a mel knave) True) (Or (Eq True False) (Eq True False))
% 3.97/4.18 Clause #100 (by clausification #[98]): Or (Eq (is_a mel knave) True) (Eq True False)
% 3.97/4.18 Clause #101 (by clausification #[100]): Eq (is_a mel knave) True
% 3.97/4.18 Clause #102 (by backward demodulation #[101, 7]): Or (Eq (says zoey True) True) (Eq True False)
% 3.97/4.18 Clause #103 (by backward demodulation #[101, 54]): Or (Eq (is_a zoey knave) False) (Or (Eq True False) (Eq knave knight))
% 3.97/4.18 Clause #116 (by clausification #[102]): Eq (says zoey True) True
% 3.97/4.18 Clause #120 (by clausification #[47]): ∀ (a a_1 : Iota),
% 3.97/4.18 Or (Eq (is_a zoey a) False)
% 3.97/4.18 (Or (Eq (is_a mel a_1) False)
% 3.97/4.18 (Or (Eq (Eq a_1 knave) False) (Or (Eq (Eq a knight) False) (Or (Eq (Eq a knave) True) (Eq a_1 knight)))))
% 3.97/4.18 Clause #121 (by clausification #[120]): ∀ (a a_1 : Iota),
% 3.97/4.18 Or (Eq (is_a zoey a) False)
% 3.97/4.18 (Or (Eq (is_a mel a_1) False)
% 3.97/4.18 (Or (Eq (Eq a knight) False) (Or (Eq (Eq a knave) True) (Or (Eq a_1 knight) (Ne a_1 knave)))))
% 3.97/4.18 Clause #122 (by clausification #[121]): ∀ (a a_1 : Iota),
% 3.97/4.18 Or (Eq (is_a zoey a) False)
% 3.97/4.18 (Or (Eq (is_a mel a_1) False) (Or (Eq (Eq a knave) True) (Or (Eq a_1 knight) (Or (Ne a_1 knave) (Ne a knight)))))
% 3.97/4.18 Clause #123 (by clausification #[122]): ∀ (a a_1 : Iota),
% 3.97/4.18 Or (Eq (is_a zoey a) False)
% 3.97/4.18 (Or (Eq (is_a mel a_1) False) (Or (Eq a_1 knight) (Or (Ne a_1 knave) (Or (Ne a knight) (Eq a knave)))))
% 3.97/4.18 Clause #124 (by destructive equality resolution #[123]): ∀ (a : Iota),
% 3.97/4.18 Or (Eq (is_a zoey a) False) (Or (Eq (is_a mel knave) False) (Or (Eq knave knight) (Or (Ne a knight) (Eq a knave))))
% 3.97/4.18 Clause #125 (by destructive equality resolution #[124]): Or (Eq (is_a zoey knight) False) (Or (Eq (is_a mel knave) False) (Or (Eq knave knight) (Eq knight knave)))
% 3.97/4.18 Clause #126 (by eliminate duplicate literals #[125]): Or (Eq (is_a zoey knight) False) (Or (Eq (is_a mel knave) False) (Eq knave knight))
% 3.97/4.18 Clause #127 (by forward demodulation #[126, 101]): Or (Eq (is_a zoey knight) False) (Or (Eq True False) (Eq knave knight))
% 3.97/4.18 Clause #128 (by clausification #[127]): Or (Eq (is_a zoey knight) False) (Eq knave knight)
% 3.97/4.18 Clause #129 (by superposition #[128, 30]): Or (Eq knave knight) (Or (Eq False True) (Eq (is_a zoey knave) True))
% 3.97/4.18 Clause #130 (by clausification #[129]): Or (Eq knave knight) (Eq (is_a zoey knave) True)
% 3.97/4.18 Clause #141 (by clausification #[103]): Or (Eq (is_a zoey knave) False) (Eq knave knight)
% 3.97/4.18 Clause #142 (by superposition #[141, 130]): Or (Eq knave knight) (Or (Eq knave knight) (Eq False True))
% 3.97/4.18 Clause #143 (by clausification #[142]): Or (Eq knave knight) (Eq knave knight)
% 3.97/4.18 Clause #144 (by eliminate duplicate literals #[143]): Eq knave knight
% 3.97/4.18 Clause #146 (by backward demodulation #[144, 30]): Or (Eq (is_a zoey knave) True) (Eq (is_a zoey knave) True)
% 3.97/4.18 Clause #152 (by eliminate duplicate literals #[146]): Eq (is_a zoey knave) True
% 3.97/4.18 Clause #154 (by superposition #[152, 22]): ∀ (a : Prop), Or (Eq True False) (Or (Eq a False) (Eq (says zoey True) False))
% 3.97/4.18 Clause #155 (by clausification #[154]): ∀ (a : Prop), Or (Eq a False) (Eq (says zoey True) False)
% 3.97/4.18 Clause #157 (by falseElim #[155]): Eq (says zoey True) False
% 3.97/4.18 Clause #158 (by superposition #[157, 116]): Eq False True
% 3.97/4.18 Clause #159 (by clausification #[158]): False
% 3.97/4.18 SZS output end Proof for theBenchmark.p
%------------------------------------------------------------------------------